using System;
using System.Collections.Generic;
using System.Text;

namespace Academia.Entidades
{
    #region Propiedades
    public abstract class Persona
    {
        private string _tipoDoc;

        public string TipoDoc
        {
            get { return _tipoDoc; }
            set { _tipoDoc = value; }
        }
        private int _nroDoc;

        public int NroDoc
        {
            get { return _nroDoc; }
            set { _nroDoc = value; }
        }
        private string _apellido;

        public string Apellido
        {
            get { return _apellido; }
            set { _apellido = value; }
        }
        private string _nombre;

        public string Nombre
        {
            get { return _nombre; }
            set { _nombre = value; }
        }

        public string NombreCompleto
        {
            get { return Apellido + ", " + Nombre; }

        }

        private string _direccion;

        public string Direccion
        {
            get { return _direccion; }
            set { _direccion = value; }
        }
        private string _telefonoCelular;

        public string TelefonoCelular
        {
            get { return _telefonoCelular; }
            set { _telefonoCelular = value; }
        }
        private string _email;

        public string Email
        {
            get { return _email; }
            set { _email = value; }
        }
        private string _telefonoFijo;

        public string TelefonoFijo
        {
            get { return _telefonoFijo; }
            set { _telefonoFijo = value; }
        }
        private DateTime _fechaNacimiento;

        public DateTime FechaNacimiento
        {
            get { return _fechaNacimiento; }
            set { _fechaNacimiento = value; }
        }

        public string FechaNacMostrar
        {
            get
            {
                return FechaNacimiento.ToShortDateString();
            }
        }

        private int _legajo;

        public int Legajo
        {
            get { return _legajo; }
            set { _legajo = value; }
        }

        public int Edad
        {
            get
            {
                DateTime fechaActual = DateTime.Today;
                TimeSpan dif = fechaActual.Subtract(FechaNacimiento);
                int dias = dif.Days;
                return dias / 365;
            }
        }

        private Usuario _usuario;

        public Usuario usuario
        {
            get
            {
                return _usuario;
            }
            set
            {
                _usuario = value;
            }
        }
    }
    #endregion
}
